"""
【练习】购物车
1.定义一个商品类，包含 商品名称 和 商品价格 两个属性，
2.实现商品类的对象描述方法和添加到购物车方法
3.定义一个购物车类，包含一个商品列表 属性，和 添加商品 及 显示所有商品 两个方法
"""



class Shop:
    # 定义一个商品类，包含 商品名称 和 商品价格 两个属性
    def __init__(self, shop_name, shop_prince):
        self.shop_name = shop_name
        self.shop_price = shop_prince
    # 实现商品类的对象描述方法和添加到购物车方法

    def __str__(self):
        return f'该商品的名称是{self.shop_name},单价为{self.shop_price}元'

    def add_shop_cart(self,cart):
        cart.add_shop(self)


# 定义一个购物车类，包含一个商品列表 属性，和 添加商品 及 显示所有商品 两个方法
class ShopCart:
    def __init__(self):
        self.shoplist = []

    def add_shop(self, n):
        self.shoplist.append(n)

    def display_shop(self):
        for n in self.shoplist:
            print(n)


if __name__ == "__main__":
    shop1 = Shop('香蕉', 4)
    shop2 = Shop('苹果', 3)
    shop3 = Shop('梨', 6)

    bus = ShopCart()

    bus.add_shop(shop1)
    bus.add_shop(shop2)
    bus.add_shop(shop3)

    bus.display_shop()





